﻿namespace CSharpLogger.Common
{
    /// <summary>
    /// Specify the LogLevel for the CSharpLogger instance.
    /// 
    /// The LogLevel can be configured based on the properties from the logging configuration file
    /// </summary>
    public enum LogLevel
    {
        /// <summary>
        ///  The OFF has the lowest possible rank and is intended to turn off logging.
        /// </summary>
        OFF = 0,
        /// <summary>
        /// The INFO level designates informational messages that highlight the progress of the application at coarse-grained level.
        /// </summary>
        INFO = 1,
        /// <summary>
        /// The FATAL level designates very severe error events that will presumably lead the application to abort.
        /// </summary>
        FATAL = 2,
        /// <summary>
        /// The ERROR level designates error events that might still allow the application to continue running.
        /// </summary>
        ERROR = 4,
        /// <summary>
        /// The WARN level designates potentially harmful situations.
        /// </summary>
        WARN = 8,
        /// <summary>
        /// The DEBUG Level designates fine-grained informational events that are most useful to debug an application
        /// </summary>
        DEBUG = 16,
        
    }
}